﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Collections;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000F2F RID: 3887
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class RogueMagicGameItemInfo : IMessage<RogueMagicGameItemInfo>, IMessage, IEquatable<RogueMagicGameItemInfo>, IDeepCloneable<RogueMagicGameItemInfo>, IBufferMessage
	{
		// Token: 0x17003161 RID: 12641
		// (get) Token: 0x0600AE6B RID: 44651 RVA: 0x001D7CEB File Offset: 0x001D5EEB
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<RogueMagicGameItemInfo> Parser
		{
			get
			{
				return RogueMagicGameItemInfo._parser;
			}
		}

		// Token: 0x17003162 RID: 12642
		// (get) Token: 0x0600AE6C RID: 44652 RVA: 0x001D7CF2 File Offset: 0x001D5EF2
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return RogueMagicGameItemInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17003163 RID: 12643
		// (get) Token: 0x0600AE6D RID: 44653 RVA: 0x001D7D04 File Offset: 0x001D5F04
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return RogueMagicGameItemInfo.Descriptor;
			}
		}

		// Token: 0x0600AE6E RID: 44654 RVA: 0x001D7D0B File Offset: 0x001D5F0B
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueMagicGameItemInfo()
		{
		}

		// Token: 0x0600AE6F RID: 44655 RVA: 0x001D7D2C File Offset: 0x001D5F2C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueMagicGameItemInfo(RogueMagicGameItemInfo other) : this()
		{
			this.gameStyleType_ = other.gameStyleType_;
			this.magicScepterInfoList_ = other.magicScepterInfoList_.Clone();
			this.bEAACLMAMIH_ = other.bEAACLMAMIH_;
			this.rogueMagicUnitInfoList_ = other.rogueMagicUnitInfoList_.Clone();
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600AE70 RID: 44656 RVA: 0x001D7D8A File Offset: 0x001D5F8A
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueMagicGameItemInfo Clone()
		{
			return new RogueMagicGameItemInfo(this);
		}

		// Token: 0x17003164 RID: 12644
		// (get) Token: 0x0600AE71 RID: 44657 RVA: 0x001D7D92 File Offset: 0x001D5F92
		// (set) Token: 0x0600AE72 RID: 44658 RVA: 0x001D7D9A File Offset: 0x001D5F9A
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint GameStyleType
		{
			get
			{
				return this.gameStyleType_;
			}
			set
			{
				this.gameStyleType_ = value;
			}
		}

		// Token: 0x17003165 RID: 12645
		// (get) Token: 0x0600AE73 RID: 44659 RVA: 0x001D7DA3 File Offset: 0x001D5FA3
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<RogueMagicGameScepterInfo> MagicScepterInfoList
		{
			get
			{
				return this.magicScepterInfoList_;
			}
		}

		// Token: 0x17003166 RID: 12646
		// (get) Token: 0x0600AE74 RID: 44660 RVA: 0x001D7DAB File Offset: 0x001D5FAB
		// (set) Token: 0x0600AE75 RID: 44661 RVA: 0x001D7DB3 File Offset: 0x001D5FB3
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool BEAACLMAMIH
		{
			get
			{
				return this.bEAACLMAMIH_;
			}
			set
			{
				this.bEAACLMAMIH_ = value;
			}
		}

		// Token: 0x17003167 RID: 12647
		// (get) Token: 0x0600AE76 RID: 44662 RVA: 0x001D7DBC File Offset: 0x001D5FBC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<RogueMagicGameUnitInfo> RogueMagicUnitInfoList
		{
			get
			{
				return this.rogueMagicUnitInfoList_;
			}
		}

		// Token: 0x0600AE77 RID: 44663 RVA: 0x001D7DC4 File Offset: 0x001D5FC4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as RogueMagicGameItemInfo);
		}

		// Token: 0x0600AE78 RID: 44664 RVA: 0x001D7DD4 File Offset: 0x001D5FD4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(RogueMagicGameItemInfo other)
		{
			return other != null && (other == this || (this.GameStyleType == other.GameStyleType && this.magicScepterInfoList_.Equals(other.magicScepterInfoList_) && this.BEAACLMAMIH == other.BEAACLMAMIH && this.rogueMagicUnitInfoList_.Equals(other.rogueMagicUnitInfoList_) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600AE79 RID: 44665 RVA: 0x001D7E48 File Offset: 0x001D6048
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.GameStyleType != 0U)
			{
				num ^= this.GameStyleType.GetHashCode();
			}
			num ^= this.magicScepterInfoList_.GetHashCode();
			if (this.BEAACLMAMIH)
			{
				num ^= this.BEAACLMAMIH.GetHashCode();
			}
			num ^= this.rogueMagicUnitInfoList_.GetHashCode();
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600AE7A RID: 44666 RVA: 0x001D7EBC File Offset: 0x001D60BC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600AE7B RID: 44667 RVA: 0x001D7EC4 File Offset: 0x001D60C4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600AE7C RID: 44668 RVA: 0x001D7ED0 File Offset: 0x001D60D0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.BEAACLMAMIH)
			{
				output.WriteRawTag(24);
				output.WriteBool(this.BEAACLMAMIH);
			}
			this.magicScepterInfoList_.WriteTo(ref output, RogueMagicGameItemInfo._repeated_magicScepterInfoList_codec);
			this.rogueMagicUnitInfoList_.WriteTo(ref output, RogueMagicGameItemInfo._repeated_rogueMagicUnitInfoList_codec);
			if (this.GameStyleType != 0U)
			{
				output.WriteRawTag(112);
				output.WriteUInt32(this.GameStyleType);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600AE7D RID: 44669 RVA: 0x001D7F4C File Offset: 0x001D614C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.GameStyleType != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.GameStyleType);
			}
			num += this.magicScepterInfoList_.CalculateSize(RogueMagicGameItemInfo._repeated_magicScepterInfoList_codec);
			if (this.BEAACLMAMIH)
			{
				num += 2;
			}
			num += this.rogueMagicUnitInfoList_.CalculateSize(RogueMagicGameItemInfo._repeated_rogueMagicUnitInfoList_codec);
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600AE7E RID: 44670 RVA: 0x001D7FBC File Offset: 0x001D61BC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(RogueMagicGameItemInfo other)
		{
			if (other == null)
			{
				return;
			}
			if (other.GameStyleType != 0U)
			{
				this.GameStyleType = other.GameStyleType;
			}
			this.magicScepterInfoList_.Add(other.magicScepterInfoList_);
			if (other.BEAACLMAMIH)
			{
				this.BEAACLMAMIH = other.BEAACLMAMIH;
			}
			this.rogueMagicUnitInfoList_.Add(other.rogueMagicUnitInfoList_);
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600AE7F RID: 44671 RVA: 0x001D802E File Offset: 0x001D622E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600AE80 RID: 44672 RVA: 0x001D8038 File Offset: 0x001D6238
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num <= 50U)
				{
					if (num == 24U)
					{
						this.BEAACLMAMIH = input.ReadBool();
						continue;
					}
					if (num == 50U)
					{
						this.magicScepterInfoList_.AddEntriesFrom(ref input, RogueMagicGameItemInfo._repeated_magicScepterInfoList_codec);
						continue;
					}
				}
				else
				{
					if (num == 90U)
					{
						this.rogueMagicUnitInfoList_.AddEntriesFrom(ref input, RogueMagicGameItemInfo._repeated_rogueMagicUnitInfoList_codec);
						continue;
					}
					if (num == 112U)
					{
						this.GameStyleType = input.ReadUInt32();
						continue;
					}
				}
				this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
			}
		}

		// Token: 0x040046AF RID: 18095
		private static readonly MessageParser<RogueMagicGameItemInfo> _parser = new MessageParser<RogueMagicGameItemInfo>(() => new RogueMagicGameItemInfo());

		// Token: 0x040046B0 RID: 18096
		private UnknownFieldSet _unknownFields;

		// Token: 0x040046B1 RID: 18097
		public const int GameStyleTypeFieldNumber = 14;

		// Token: 0x040046B2 RID: 18098
		private uint gameStyleType_;

		// Token: 0x040046B3 RID: 18099
		public const int MagicScepterInfoListFieldNumber = 6;

		// Token: 0x040046B4 RID: 18100
		private static readonly FieldCodec<RogueMagicGameScepterInfo> _repeated_magicScepterInfoList_codec = FieldCodec.ForMessage<RogueMagicGameScepterInfo>(50U, RogueMagicGameScepterInfo.Parser);

		// Token: 0x040046B5 RID: 18101
		private readonly RepeatedField<RogueMagicGameScepterInfo> magicScepterInfoList_ = new RepeatedField<RogueMagicGameScepterInfo>();

		// Token: 0x040046B6 RID: 18102
		public const int BEAACLMAMIHFieldNumber = 3;

		// Token: 0x040046B7 RID: 18103
		private bool bEAACLMAMIH_;

		// Token: 0x040046B8 RID: 18104
		public const int RogueMagicUnitInfoListFieldNumber = 11;

		// Token: 0x040046B9 RID: 18105
		private static readonly FieldCodec<RogueMagicGameUnitInfo> _repeated_rogueMagicUnitInfoList_codec = FieldCodec.ForMessage<RogueMagicGameUnitInfo>(90U, RogueMagicGameUnitInfo.Parser);

		// Token: 0x040046BA RID: 18106
		private readonly RepeatedField<RogueMagicGameUnitInfo> rogueMagicUnitInfoList_ = new RepeatedField<RogueMagicGameUnitInfo>();
	}
}
